package org.lemon.cla.dto.request;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.lemon.cla.enums.UserRoleEnum; // 导入用户角色枚举

import java.time.LocalDateTime;

@Data
@Schema(description = "用户模糊查询请求对象")
public class UserSearchRequest {

    @Schema(description = "用户名关键词 (模糊查询)", example = "zhangsan")
    private String username;

    @Schema(description = "用户角色", example = "学生", allowableValues = {"学生", "管理员"})
    private UserRoleEnum role;

    @Schema(description = "真名关键词 (模糊查询)", example = "张三")
    private String realName;

    @Schema(description = "手机号关键词 (模糊查询)", example = "138")
    private String phone;

    @Schema(description = "邮箱关键词 (模糊查询)", example = "example.com")
    private String email;

    @Schema(description = "创建时间起始 (精确到秒，模糊查询)", example = "2023-01-01T00:00:00")
    private LocalDateTime createTimeStart;

    @Schema(description = "创建时间结束 (精确到秒，模糊查询)", example = "2023-12-31T23:59:59")
    private LocalDateTime createTimeEnd;
}